package com.open.capacity.notice.dto;

import java.io.Serializable;
import java.util.List;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;

import org.hibernate.validator.constraints.Length;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.open.capacity.common.validator.UpdateGroup;
import com.open.capacity.notice.dmo.MessageRececiverDetail;
import com.open.capacity.notice.enums.RececiverType;

import io.swagger.annotations.ApiModelProperty;
import lombok.AccessLevel;
import lombok.Data;
import lombok.Setter;

/**
 * 接收组
 * @since 2024-05-07
 */
@Data
@SuppressWarnings("all")
public class MessageRececiverGroupDto implements Serializable {
 
	@NotBlank(groups = UpdateGroup.class,message = "id不能为空")
	private String id;

	@ApiModelProperty(value = "接收组名称")
	@NotBlank(message = "接收组名称不能为空")
	@Length(max = 100, message = "超过接收组名称最大长度")
	private String name;

	@ApiModelProperty(value = "接收人类型")
	@Setter(AccessLevel.PRIVATE)
	private RececiverType receciverType;

	@NotEmpty(message = "接收人不能为空")
	@ApiModelProperty(value = "接收人")
	private List<MessageRececiverDetail> recevivers;
	
	@ApiModelProperty(value = "删除列表")
	private List<String> delLists;

	@ApiModelProperty(value = "备注")
	@Length(max = 600, message = "超过备注最大长度")
	private String remark;

}
